﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

using PeliGo.DataModel;
using PeliGo.BL;

namespace PeliGo.UI
{
    public partial class frmAdmFormato : Form
    {
        private FormatoBL objFormatoBL;

        public frmAdmFormato()
        {
            InitializeComponent();
        }

        private void frmAdmFormato_Load(object sender, EventArgs e)
        {
            ConfigurarControles(dgvFormato);
            objFormatoBL = new FormatoBL();
            CargarGrilla();
        }

        private void btnNuevo_Click(object sender, EventArgs e)
        {
            frmFormato frmF = new frmFormato();
            frmF.midelegado += CargarGrilla;
            frmF.ShowDialog();
        }

        public void ConfigurarControles(DataGridView dgv)
        {
            dgv.AllowDrop = false;
            dgv.AllowUserToAddRows = false;
            dgv.AllowUserToDeleteRows = false;
            dgv.AllowUserToResizeColumns = false;
            dgv.AllowUserToResizeRows = false;
            dgv.ReadOnly = true;
            dgv.MultiSelect = false;
            dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
        }

        void CargarGrilla()
        {
            objFormatoBL = new FormatoBL();
            dgvFormato.DataSource = objFormatoBL.ListarFormato();
            dgvFormatoConfigurar();
        }

        private void dgvFormatoConfigurar()
        {
            DataGridViewCellStyle csLetras = new DataGridViewCellStyle();
            csLetras.Alignment = DataGridViewContentAlignment.MiddleLeft;

            dgvFormato.Columns["NFormato"].DisplayIndex = 0;
            dgvFormato.Columns["NFormato"].HeaderText = "Nombre";
            dgvFormato.Columns["NFormato"].Width = 207;
            dgvFormato.Columns["NFormato"].DefaultCellStyle = csLetras;
            dgvFormato.Columns["NFormato"].HeaderCell.Style = csLetras;

            dgvFormato.Columns["FormatoId"].Visible = false;
            dgvFormato.Columns["Estado"].Visible = false;
            dgvFormato.Columns["Ejemplar"].Visible = false;
            
            dgvFormato.ClearSelection();
        }

        private void btnEliminar_Click(object sender, EventArgs e)
        {
            if (dgvFormato.SelectedRows.Count == 0)
            {
                MessageBox.Show("Por favor, seleccionar un formato", "PeliGo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }

            if(MessageBox.Show("¿Desea eliminar el registro?","PeliGo",MessageBoxButtons.YesNo,MessageBoxIcon.Question) == DialogResult.Yes)
            {
                int FormatoId = Convert.ToInt32(dgvFormato.SelectedRows[0].Cells["FormatoId"].Value);
                objFormatoBL.EliminarFormato(FormatoId);
                CargarGrilla();
            }
        }       

    }
}
